FIG. 1 depicts user 101 who is carrying mobile telecommunications terminal 102 (e.g., a mobile telephone, a personal digital assistant [PDA], etc.) in accordance with the prior art. Mobile telecommunications terminal 102 wirelessly transmits signals to and receives signals from one or more wireless infrastructure nodes (e.g., a Code Division Multiple Access [CDMA] base station, an Institute of Electrical and Electronics Engineers [IEEE] 802.11 wireless access point, etc.). User 101 can move about and can enter commands-into mobile telecommunications terminal 102 via one or more input mechanisms (e.g., keypad input, pen-based input, voice input, etc.). Mobile telecommunications terminal 102 also typically has one or more output transducers (e.g., liquid-crystal display, speaker, etc.) to present content (e.g., a web page, an audio clip, output of an executed query, etc.) to user 101.
A local command issued by user 101 is a command that executes on mobile telecommunications terminal 102 and does not involve communication with any remote device. Examples of local commands include adjusting the volume of the speaker of mobile telecommunications terminal 102, editing information in a spreadsheet stored in disk memory in mobile telecommunications terminal 102, playing a Chess game residing in random-access memory in mobile telecommunications terminal 102, playing a sound clip stored on disk in mobile telecommunications terminal 102, capturing an image with a digital camera embedded in mobile telecommunications terminal 102, and capturing an acoustic signal with a microphone embedded in mobile telecommunications terminal 102. Local commands that involve accessing content stored at mobile telecommunications terminal 102 (e.g., in random-access memory, in disk storage, etc.) are also known as requests to access local content.
A remote command issued by user 101 is a command issued through mobile telecommunications terminal 102 that (i) executes on a remote device (e.g., a server, a mobile telecommunications terminal other than terminal 102, etc.), (ii) accesses data stored at a remote device, (iii) transmits data to a remote device, or (iv) any combination of (i), (ii), and (iii). Examples of remote commands include downloading a web page, issuing a query that searches a database that is stored on another device, sending an email message, and placing a telephone call. Remote commands that satisfy condition (ii) (i.e., that access information stored at a remote device) are also known as requests to access remote content.
Some computing devices such as mobile telecommunications terminals, desktop personal computers (PCs), and servers require a user to log in to the device before allowing the user to use the device. For example, when a PC running the Linux or Windows XP operating system is powered on, the user is confronted with a log-in screen that asks for the user's username (also referred to as a screen name for Internet service providers such as AOL) and password. The user is not allowed to proceed past the start-up screen until he or she provides a valid username and password combination.
Some computing devices provide, in addition to a log-in screen, one or more authorization mechanisms to restrict access to data, commands, or both. For example, PCs that run the Linux or Windows XP operating system enable a data file to be associated with a particular user or group of users, thereby allowing only the associated user(s) to access the data file. In some authorization mechanisms, separate read- and write-permissions can be associated with a data file, thereby partitioning users into four categories: (i) those who can read and write to the data file, (ii) those who can read the data file but cannot write to it, (iii) those who can write to the data file but cannot read it, and (iv) those who can neither read nor write to the data file. Furthermore, some authorization mechanisms enable a command (such as an executable file) to be associated with a particular user or group of users, thereby allowing only the associated user(s) to execute the command.